package com.charger.giftcert.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.charger.PromoteOperations.domain.Roleofgift;
import com.charger.chargingStation.domain.Chargingstation;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.charger.common.annotation.Excel;
import com.charger.common.core.domain.BaseEntity;


/**
 * 礼券管理对象 giftcertificate
 *
 * @author Lilysi
 * @date 2024-11-23
 */
public class Giftcertificate extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 序号
     */
    private Long id;

    /**
     * 礼券名称
     */
    @Excel(name = "礼券名称")
    private String name;

    /**
     * 类型
     */
    @Excel(name = "类型")
    private String type;

    /**
     * 开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /**
     * 停止时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "停止时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /**
     * 面额
     */
    @Excel(name = "面额")
    private Long denomination;

    /**
     * 折扣
     */
    @Excel(name = "折扣")
    private String discount;

    /**
     * 逻辑删除 (默认为 0)
     */
    private Long del;

    @TableField(exist = false)
    private List<Chargingstation> chargingstations;
    @TableField(exist = false)
    private List<Roleofgift> roleofgifts;
    @TableField(exist = false)
    private List<Long> roleofgiftId =new ArrayList<>();
    @TableField(exist = false)
    private List<Long> chargerStationId=new ArrayList<>();

    public Giftcertificate() {
    }

    public Giftcertificate(Long id, String name, String type, Date startTime, Date endTime, Long denomination, String discount, Long del, List<Chargingstation> chargingstations, List<Roleofgift> roleofgifts, List<Long> roleofgiftId, List<Long> chargerStationId) {
        this.id = id;
        this.name = name;
        this.type = type;
        this.startTime = startTime;
        this.endTime = endTime;
        this.denomination = denomination;
        this.discount = discount;
        this.del = del;
        this.chargingstations = chargingstations;
        this.roleofgifts = roleofgifts;
        this.roleofgiftId = roleofgiftId;
        this.chargerStationId = chargerStationId;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Long getDenomination() {
        return denomination;
    }

    public void setDenomination(Long denomination) {
        this.denomination = denomination;
    }

    public String getDiscount() {
        return discount;
    }

    public void setDiscount(String discount) {
        this.discount = discount;
    }

    public Long getDel() {
        return del;
    }

    public void setDel(Long del) {
        this.del = del;
    }

    public List<Chargingstation> getChargingstations() {
        return chargingstations;
    }

    public void setChargingstations(List<Chargingstation> chargingstations) {
        this.chargingstations = chargingstations;
    }

    public List<Roleofgift> getRoleofgifts() {
        return roleofgifts;
    }

    public void setRoleofgifts(List<Roleofgift> roleofgifts) {
        this.roleofgifts = roleofgifts;
    }

    public List<Long> getRoleofgiftId() {
        return roleofgiftId;
    }

    public void setRoleofgiftId(List<Long> roleofgiftId) {
        this.roleofgiftId = roleofgiftId;
    }

    public List<Long> getChargerStationId() {
        return chargerStationId;
    }

    public void setChargerStationId(List<Long> chargerStationId) {
        this.chargerStationId = chargerStationId;
    }
}
